#pragma once

enum eRadioStation
{
	WILDSTYLE,
	FLASH_FM,
	KCHAT,
	FEVER,
	V_ROCK,
	VCPR,
	RADIO_ESPANTOSO,
	EMOTION,
	WAVE,
	USERTRACK,
	NUM_RADIOS = 11,
	POLICE_RADIO = 11,
	RADIO_OFF = 10,
	//TAXI_RADIO,
};

enum eMusicMode
{
	MUSICMODE_FRONTEND = 0,
	MUSICMODE_GAME,
	MUSICMODE_CUTSCENE,
	MUSICMODE_DISABLE,
	MUSICMODE_DISABLED,
};

enum ePlayerMood
{
	PLAYER_MOOD_CALM = 0,
	PLAYER_MOOD_PISSED_OFF,
	PLAYER_MOOD_ANGRY,
	PLAYER_MOOD_WISECRACKING,
	MAX_PLAYER_MOODS,
};

enum eStreamedSounds
{
	STREAMED_SOUND_RADIO_HEAD,
	STREAMED_SOUND_RADIO_DOUBLE,
	STREAMED_SOUND_RADIO_KJAH,
	STREAMED_SOUND_RADIO_RISE,
	STREAMED_SOUND_RADIO_LIPS,
	STREAMED_SOUND_RADIO_MUNDO,
	STREAMED_SOUND_RADIO_MSX,
	STREAMED_SOUND_RADIO_FLASH,
	STREAMED_SOUND_RADIO_LCJ,
	STREAMED_SOUND_RADIO_LCFR,
	STREAMED_SOUND_RADIO_MP3_PLAYER,
	STREAMED_SOUND_CITY_AMBIENT,
	STREAMED_SOUND_WATER_AMBIENT,
	STREAMED_SOUND_SAWMILL,
	STREAMED_SOUND_HAVANA_CITY_AMBIENT, // CITY
	STREAMED_SOUND_HAVANA_WATER_AMBIENT, // WATER
	STREAMED_SOUND_HAVANA_BEACH_AMBIENT, // WATER
	STREAMED_SOUND_MALL_AMBIENT, // CITY
	STREAMED_SOUND_STRIPCLUB_AMBIENT, // CITY
	STREAMED_SOUND_MALIBU_AMBIENT, // CITY
	STREAMED_SOUND_HOTEL_AMBIENT, // CITY
	STREAMED_SOUND_DIRTRING_AMBIENT, // CITY
	STREAMED_SOUND_LAW4RIOT_AMBIENT, // CITY
	STREAMED_SOUND_AMBSIL_AMBIENT, // CITY
	STREAMED_SOUND_RADIO_POLICE,
	STREAMED_SOUND_RADIO_TAXI,
	STREAMED_SOUND_NEWS_A,
	STREAMED_SOUND_NEWS_B,
	STREAMED_SOUND_NEWS_C,
	STREAMED_SOUND_NEWS_D,
	STREAMED_SOUND_NEWS_E,
	STREAMED_SOUND_NEWS_F,
	STREAMED_SOUND_NEWS_G,
	STREAMED_SOUND_NEWS_H,
	STREAMED_SOUND_NEWS_I,
	STREAMED_SOUND_NEWS_J,
	STREAMED_SOUND_NEWS_K,
	STREAMED_SOUND_NEWS_L,
	STREAMED_SOUND_NEWS_M,
	STREAMED_SOUND_NEWS_N,
	STREAMED_SOUND_CUTSCENE_BIKER,
	STREAMED_SOUND_CUTSCENE_BONEVOY,
	STREAMED_SOUND_CUTSCENE_CAMPAIN,
	STREAMED_SOUND_CUTSCENE_CASHCHP,
	STREAMED_SOUND_CUTSCENE_CONTBAN,
	STREAMED_SOUND_CUTSCENE_CRAZY69,
	STREAMED_SOUND_CUTSCENE_CUTTEST,
	STREAMED_SOUND_CUTSCENE_DEADLY,
	STREAMED_SOUND_CUTSCENE_DONPROB,
	STREAMED_SOUND_CUTSCENE_DRIVNMR,
	STREAMED_SOUND_CUTSCENE_ELECTON,
	STREAMED_SOUND_CUTSCENE_FINAL,
	STREAMED_SOUND_CUTSCENE_FINAL_2,
	STREAMED_SOUND_CUTSCENE_HOMSWET,
	STREAMED_SOUND_CUTSCENE_HOTWHEL,
	STREAMED_SOUND_CUTSCENE_KIDNAPP,
	STREAMED_SOUND_CUTSCENE_LANDGRB,
	STREAMED_SOUND_CUTSCENE_MORGUE,
	STREAMED_SOUND_CUTSCENE_OVERDOS,
	STREAMED_SOUND_CUTSCENE_RUFJUST,
	STREAMED_SOUND_CUTSCENE_SAYONAR,
	STREAMED_SOUND_CUTSCENE_SICILAN,
	STREAMED_SOUND_CUTSCENE_THEOFER,
	STREAMED_SOUND_CUTSCENE_INTRO,
	STREAMED_SOUND_CUTSCENE_FINALE,
	STREAMED_SOUND_MISSION_COMPLETED,
	TOTAL_STREAMED_SOUNDS,
	NO_TRACK,
};

enum AudioEntityHandle {
	AEHANDLE_NONE = -5,
	AEHANDLE_ERROR_NOAUDIOSYS = -4,
	AEHANDLE_ERROR_NOFREESLOT = -3,
	AEHANDLE_ERROR_NOENTITY = -2,
	AEHANDLE_ERROR_BADAUDIOTYPE = -1,
};

enum eAudioType
{
	AUDIOTYPE_PHYSICAL = 0,
	AUDIOTYPE_EXPLOSION,
	AUDIOTYPE_FIRE,
	AUDIOTYPE_WEATHER,
	AUDIOTYPE_SCRIPTOBJECT,
#ifdef GTA_BRIDGE
	AUDIOTYPE_BRIDGE,
#endif
	AUDIOTYPE_COLLISION,
	AUDIOTYPE_FRONTEND,
	AUDIOTYPE_PROJECTILE,
	AUDIOTYPE_GARAGE,
	AUDIOTYPE_FIREHYDRANT,
	AUDIOTYPE_WATERCANNON,
	AUDIOTYPE_ESCALATOR,
	AUDIOTYPE_EXTRA_SOUNDS,
	AUDIOTYPE_POLICERADIO,
	TOTAL_AUDIO_TYPES,
};

#ifdef GTA_PS2
enum
{
	NUM_CHANNELS_GENERIC = 40,
	CHANNEL_POLICE_RADIO = NUM_CHANNELS_GENERIC,
	CHANNEL_MISSION_AUDIO_1,
	CHANNEL_MISSION_AUDIO_2,
	CHANNEL_PLAYER_VEHICLE_ENGINE,
	NUM_CHANNELS,

	NUM_CHANNELS_DTS_GENERIC = 18,
	CHANNEL_DTS_POLICE_RADIO = NUM_CHANNELS_DTS_GENERIC,
	CHANNEL_DTS_MISSION_AUDIO_1,
	CHANNEL_DTS_MISSION_AUDIO_2,
	CHANNEL_DTS_PLAYER_VEHICLE_ENGINE,
};
#else
enum
{
#ifdef PS2_AUDIO_CHANNELS
	NUM_CHANNELS_GENERIC = 40,
#else
	NUM_CHANNELS_GENERIC = 20,
#endif
	CHANNEL_POLICE_RADIO,
	CHANNEL_MISSION_AUDIO_1,
	CHANNEL_MISSION_AUDIO_2,
	NUM_CHANNELS
};
#endif

enum
{
	MISSION_AUDIO_SLOT_1,
	MISSION_AUDIO_SLOT_2,
	MISSION_AUDIO_POLRADIO_CRIME_OR_COLOR,
	MISSION_AUDIO_POLRADIO_AREA_OR_CAR,
	MISSION_AUDIO_PLAYER_COMMENT,
	MISSION_AUDIO_COUNT
};
